home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / mint / l_0799 / 442 < prev    next >
Encoding:
Internet Message Format  |  1994-08-27  |  1.5 KB

  1. Subject: nfree patch (memory fragmentation...)
  2. Date: Thu, 19 Aug 93 23:23:22 CES
  3. From: Juergen Lock <nox@jelal.north.de>
  4. Message-Id: <9308192123.AA00114@jelal.north.de>
  5.  
  6. i just had it again, some memory chunk left in the middle of nowhere...
  7. looked again at the 1.09 diffs, hit ctrl-shift-alt-f5:
  8.  
  9. pid   4 (ksh): Arena at 1122A4 size 6000: free list:
  10. pid   4 (ksh):       112DC4 size        0
  11. pid   4 (ksh):       112E18 size        0
  12. pid   4 (ksh):       1133CA size        4
  13. pid   4 (ksh):       113468 size        8
  14. ...
  15. pid   4 (ksh): Arena at 1AC988 size 4000: free list:
  16. pid   4 (ksh):       1AC994 size     3FEC
  17.  
  18.  strange, a 4000 long area with 3fec free...  here's a patch :-)
  19.  
  20. --- nalloc2.c_    Tue Aug 17 18:36:30 1993
  21. +++ nalloc2.c    Thu Aug 19 21:46:12 1993
  22. @@ -239,7 +239,8 @@
  23.  
  24.      /* if, after coalescing, this arena is entirely free, Mfree it! */
  25.      if ((struct arena *)a->a_ffirst == a+1 && 
  26. -        (a->a_ffirst->b_size + sizeof(struct block)) == a->a_size) {
  27. +        (a->a_ffirst->b_size + sizeof(struct block) + sizeof(struct arena))
  28. +        == a->a_size && a != a_first) {
  29.          NALLOC_DEBUG('!');
  30.          *qa = a->a_next;
  31.  #if 1
  32.  
  33.  btw i later also found what looked like kmalloc'd pathnames of
  34. nonexisting files that the shell must have searched earlier...  is
  35. it tosfs that keeps them?  why? :-)
  36.  
  37.  cheers
  38.     Juergen
  39. -- 
  40. J"urgen Lock / nox@jelal.north.de / UUCP: ..!uunet!unido!uniol!jelal!nox
  41.                                 ...ohne Gewehr
  42. PGP public key fingerprint =  8A 18 58 54 03 7B FC 12  1F 8B 63 C7 19 27 CF DA 
  43.